package root.historic.componenteLog;

import java.util.GregorianCalendar;

import root.historic.componenteLog.PublicarPedido;


public class PublicarPedido implements ComponenteLog{
	
	private String nomeInteressado;
	private String nomeItem;
	private GregorianCalendar dataCriacao;
	
	public PublicarPedido(String interessado, String nomeItem){
		this.nomeInteressado = interessado;
		this.nomeItem = nomeItem;
		dataCriacao = new GregorianCalendar();
	}
	
	@Override
	public String toString(){
		return String.format("%s precisa do item %s", nomeInteressado,nomeItem);
	}
	
	@Override
	public boolean equals(Object o){
		if(!(o instanceof PublicarPedido)) return false;
		PublicarPedido terminoEmprestimo = (PublicarPedido) o;
		return nomeInteressado.equals(terminoEmprestimo.nomeInteressado) && nomeItem.equals(terminoEmprestimo.nomeItem);
	}

	@Override
	public GregorianCalendar getDataCriacao() {
		return dataCriacao;
	}

	@Override
	public int compareTo(ComponenteLog arg0) {
		if(equals(arg0)) return 0;
		if(arg0.getDataCriacao().compareTo(dataCriacao) == 0) return 1;
		return arg0.getDataCriacao().compareTo(dataCriacao);
	}
	@Override
	public int hashCode() {
		// TODO Auto-generated method stub
		return nomeInteressado.concat(nomeItem).hashCode();
	}
}
